package lab02.test24;

import java.util.Calendar;
import java.util.Date;
import java.util.Scanner;

public class Test24 {
    public static void main(String[] args) {

        //计算任意两个日期的天数之差。
        // 要求：两个日期用字符串形式输入（比如输入“20100101”表示2010年1月1日），
        // 需要将日期字符串的年、月、日分别转换为数字形式。

        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入你的生日：");
        Calendar calendar = Calendar.getInstance();
        String str = scanner.nextLine();
        String year = str.substring(0, 4);
        String month = str.substring(5, 7);
        String day = str.substring(8);
        calendar.set(Integer.parseInt(year), Integer.parseInt(month), Integer.parseInt(day));
        System.out.println("输出对应的是星期几：");
        int week = calendar.get(Calendar.DAY_OF_WEEK);
        switch (week) {
            case 1:
                System.out.println("星期一");
                break;
            case 2:
                System.out.println("星期二");
                break;
            case 3:
                System.out.println("星期三");
                break;
            case 4:
                System.out.println("星期四");
                break;
            case 5:
                System.out.println("星期五");
                break;
            case 6:
                System.out.println("星期六");
                break;
            case 7:
                System.out.println("星期天");
                break;
        }
        Date date2 = new Date();
        calendar.set(2012, Integer.parseInt(month), Integer.parseInt(day));
        Date date1 = calendar.getTime();
        long countDay = (date1.getTime() - date2.getTime() / 24 * 60 * 60 * 1000);
        if (countDay < 0) {
            calendar.set(2013, Integer.parseInt(month), Integer.parseInt(day));
            date1 = calendar.getTime();
            countDay = (date1.getTime() - date2.getTime() / 24 * 60 * 60 * 1000);
        }
        System.out.println("距离你的生日还有" + countDay + "天！");

    }
}
